<% definitions.forEach( element => { %>
type <%- element.name.replace(/«/g, "").replace(/»/g, "") %> = {<% element.tsType.properties.forEach( propertity => { %>
    <%= propertity.name %><% if ( propertity.optional ) { %>?<% } %>: <% if ( propertity.isRef ) { %><%- propertity.target.replace(/«/g, "").replace(/»/g, "") %><% } %><% if ( propertity.isAtomic ) { %><%= propertity.tsType %><% } %><% if ( propertity.isArray ) { %> Array<<% if (propertity.elementType.tsType != 'ref'){ %><%= propertity.elementType.tsType %><% } %><% if(propertity.elementType.target){ %><%= propertity.elementType.target %><% } %>><% } %><% if (propertity.properties && propertity.properties.length === 0){ %>any<% } %>;<% } ) %>
}
<% } ) %>
